Zip archiv rozbalte n∞kam na disk. Pak si vytvo°te zßstupce na ploÜe nebo v nabφdce Start.
Odinstalace
-----------
V menu Soubor zvolte Odstranit nastavenφ. Tφm se sma₧e z registru slo₧ka HKEY_CURRENT_USER\Software\Petr Lastovicka\piskvorky. Potom program sma₧te z disku.
Pravidla hry
------------
Vyhrßvß ten, kdo vedle sebe umφstφ nejmΘn∞ p∞t svojich symbol∙ ve vodorovnΘm, svislΘm nebo diagonßlnφm sm∞ru.
Ovlßdßnφ
--------
Hru zaΦφnß ten, kdo prohrßl p°edchozφ hru. Zm∞nit se to dß stiskem tlaΦφtka Novß hra (F2). Na stavovΘm °ßdku je u zaΦφnajφcφho hrßΦe zobrazena hv∞zdiΦka.
Na konci hry stiskn∞te pravΘ tlaΦφtko myÜi, aby se plocha vyΦistila a vy jste mohli hrßt dßl. B∞hem hry se p°i stisku pravΘho tlaΦφtka myÜi zv²raznφ poslednφ tah soupe°e.
Dobu p°em²Ülenφ lze m∞nit klßvesami +, -, 0 a₧ 9, nebo ji lze zadat p°φmo v sekundßch (menu HrßΦi/Nastavenφ).
PoΦφtaΦ si cel² pr∙b∞h hry pamatuje, a proto se m∙₧ete vracet zp∞t o libovoln² poΦet tah∙. Na konci hry si m∙₧ete hru znovu p°ehrßt, staΦφ stisknout Home a pak klßvesou PageDown krokovat po jednotliv²ch tazφch. M∙₧ete si takΘ rozehranou nebo dohranou partii ulo₧it na disk. Po otev°enφ souboru m∙₧ete pokraΦovat ve h°e nebo pou₧φt funkce zp∞t a vp°ed. Kdy₧ je p°i otevφrßnφ souboru stisknuto Ctrl, pak se nezm∞nφ obtφ₧nost a hrßΦi.
Kliknutφ prav²m tlaΦφtkem myÜi na jmΘno hrßΦe na stavovΘm °ßdku p°epne mezi ╚lov∞k / PoΦφtaΦ. Dvojklik na jmΘno hrßΦe zobrazφ okno pro v²b∞r EXE souboru.
Mo₧nosti
--------
- èφ°ka,v²Üka: rozm∞ry hracφ plochy. P°i jejich zm∞n∞ zaΦne novß hra !
- p∞t nebo vφce vyhrßvß/p°esn∞ p∞t vyhrßvß: kolik sv²ch symbol∙ musφ hrßΦ umφstit do °ady, aby vyhrßl. P°i turnaji v₧dy platφ prvnφ pravidlo (Üest a vφce v °ad∞ je takΘ v²hra).
- jednotlivΘ hry / kontinußlnφ hra: Kdy₧ zaÜkrtnete jednotlivΘ hry, pak ka₧dß hra skonΦφ, jakmile jeden z hrßΦ∙ vyhraje. Kontinußlnφ hra znamenß, ₧e lze pokraΦovat ve h°e tak dlouho, dokud se nezaplnφ celß hracφ plocha. P°i turnaji se v₧dy hrajφ jednotlivΘ hry.
- Doba zv²razn∞nφ tahu: jak dlouho je zv²razn∞n poslednφ tah. Pokud vßs to p°i h°e rozptyluje, pak zadejte 0.
- Zobrazovat sou°adnice: zobrazenφ Φφsel okolo hracφ plochy.
- Sou°adnice Φφslovat od 1: jestli mß prvnφ polφΦko sou°adnice [1,1] nebo [0,0]. Mß to vliv na logovacφ okno a Φφsla podΘl hracφ plochy. Nemß to vliv na uklßdanΘ soubory a sou°adnice posφlanΘ do AI.
- ╚φslo tahu d∞lit dv∞ma: platφ pro Φφslo tahu na stavovΘm °ßdku.
- Posφlat info evaluate x,y: pou₧φvß se pro lad∞nφ AI. Tento p°φkaz se posφlß p°i pohybu myÜi, ale jen kdy₧ je na tahu Φlov∞k.
- Zapisovat obsah roury do souboru: pou₧φvß se pro lad∞nφ AI. VÜechny p°φkazy zapsanΘ nebo p°eΦtenΘ z roury se uklßdajφ do souboru s p°φponou log, kter² je ve stejnΘ slo₧ce jako AI. V p°φpad∞ ZIP je log ve slo₧ce TEMP\psqXXX\unzX. P°i turnaji je tato mo₧nost v₧dy vypnuta.
- AutomatickΘ zahßjenφ partie: p°i zaÜkrtnutφ tΘto mo₧nosti je na zaΦßtku ka₧dΘ hry automaticky vygenerovßno n∞kolik tah∙. Je to dobrΘ k tomu, aby hra nebyla v₧dy stejnß. Kdy₧ zaΦφnß AI, pak obvykle volφ v₧dy stejnΘ zahßjenφ. Touto volbou mu lze vnutit jinß zahßjenφ.
- Kontrolovat Φasov² limit: Zobrazφ zprßvu, kdy₧ hrßΦ p°em²Ülφ moc dlouho. P°i turnaji je Φas kontrolovßn i v p°φpad∞, ₧e tuto mo₧nost nezaÜkrtnete.
- Tolerance: O kolik m∙₧e AI p°em²Ület dΘle ne₧ je Φasov² limit. Tato hodnota musφ b²t alespo≥ 100ms.
- Pam∞¥: maximßlnφ velikost pam∞ti, kterou zabφrß AI. V∞tÜina AI (vΦetn∞ pbrain-pela) tuto hodnotu ignorujφ.
- Pozastavit soupe°∙v pbrain: Zabrßnφ tomu, aby AI p°em²Ülelo v dob∞, kdy nenφ na tahu, a u₧φralo tak Φas procesoru druhΘmu hrßΦi. Je to pot°eba hlavn∞ pro turnaj. Tato mo₧nost se ignoruje p°i h°e proti Φlov∞ku a takΘ pokud AI pou₧φvß souborov² protokol (exe nezaΦφnß na pbrain-).
- Ladit pbrain: Pozastavovßnφ AI se bude provßd∞t tak, ₧e se mana₧er k AI p°ipojφ jako debugger. Jestli₧e tuto mo₧nost vypnete, pak mana₧er bude hledat v²poΦetnφ vlßkna AI mezi vÜemi spuÜt∞n²mi aplikacemi, co₧ ka₧d² tah o pßr milisekund zpomalφ.
- Logovacφ okno: co vÜechno se mß vypisovat do logovacφho okna. P°φkazy message a debug jsou u₧iteΦnΘ pro programßtory k lad∞nφ jejich AI (pouze pro AI s prefixem pbrain-).
- Slo₧ka pro data: AI si do tΘto slo₧ky m∙₧e uklßdat soubory, kterΘ obsahujφ zkuÜenosti zφskanΘ b∞hem hry. V∞tÜina AI tuto mo₧nost zatφm nevyu₧φvß.
- Ignorovat chyby: Kdy₧ tuto mo₧nost vypnete, pak se p°i chyb∞ AI krom∞ hlßÜky od mana₧eru zobrazφ takΘ hlßÜka od operaΦnφho systΘmu, kde je zobrazena adresa chyby a tlaΦφtko pro spuÜt∞nφ debuggeru. P°i sφ¥ovΘm turnaji je tato mo₧nost v₧dy apnuta.
DalÜφ um∞lΘ inteligence (AI)
----------------------------
Na http://gomocup.wz.cz/ lze najφt a stßhnout n∞kolik dalÜφch AI od r∙zn²ch autor∙. V∞tÜina z nich ale mß n∞jakß omezenφ:
1) Hracφ plocha musφ b²t Φtvercovß. N∞kterΘ AI um∞jφ hrßt jen na ploÜe 20x20.
2) Dobu p°em²Ülenφ lze nastavit s p°esnostφ jen na celΘ sekundy. N∞kterΘ AI dokonce v∙bec neum∞jφ nastavit dobu p°em²Ülenφ. N∞kterΘ AI si kontrolujφ pouze Φas na jeden tah, ale ne Φas celΘ partie.
3) V∞tÜina AI neumφ kontinußlnφ hru ani mo₧nost p°esn∞ p∞t v °ad∞ vyhrßvß.
Turnaj
------
- HrßΦi: Na ka₧d² °ßdek editaΦnφho obdΘlnφka napiÜte nßzev exe nebo zip souboru, nebo je vyberte tlaΦφtkem P°idat.
- Uklßdat partie: Partie se budou uklßdat do zvolenΘ slo₧ky. Soubory _result.txt, _table.html, state.tur se do danΘ slo₧ky uklßdajφ v₧dy.
- Uklßdat zprßvy od AI: P°φkazy message se budou uklßdat do souboru messages.txt.
- Gomotur formßt (*.rec): Partie se budou uklßdat ve formßtu, kter² pou₧φvß program Gomotur. Velikost hracφ plochy musφ b²t 20 x 20.
- Jen prohranΘ: Budou se uklßdat jen ty partie, kterΘ prvnφ hrßΦ v seznamu prohrßl.
- P°φkaz, kter² se spustφ po ka₧dΘ partii/na konci turnaje: Externφ EXE nebo BAT program. M∙₧e mφt i parametry. Pracovnφm adresß°em je slo₧ka, kam se uklßdajφ v²sledky partiφ.
- PoΦet opakovßnφ/PoΦet partiφ: Mßte-li n hrßΦ∙, k opakovßnφ, p partiφ, pak p°i zaÜkrtnutφ ka₧d² s ka₧d²m se odehraje k*p*n*(n-1)/2 zßpas∙. P°i zaÜkrtnutφ prvnφ proti vÜem ostatnφm je poΦet zßpas∙ jen k*p*(n-1). AI se zm∞nφ v₧dy po p partiφch. P°i turnaji po sφti je skupina p po sob∞ jdoucφch partiφ p°i°azena stejnΘmu klientovi.
- Tah: Maximßlnφ povolenß doba p°em²Ülenφ nad jednφm tahem. Zadßvß se v sekundßch s p°esnostφ na t°i desetinnß mφsta.
- Partie: Maximßlnφ povolenß celkovß doba p°em²Ülenφ b∞hem partie. M∞°φ se zvlßÜ¥ pro ka₧dΘho hrßΦe. Nulovß hodnota znamenß neomezen∞.
- Tolerance: O kolik m∙₧e AI p°em²Ület dΘle ne₧ je Φasov² limit. Tato hodnota musφ b²t alespo≥ 100ms.
- Pam∞¥: Maximßlnφ velikost pam∞ti, kterou zabφrß AI. Kontroluje se na konci ka₧dΘho tahu a p°i jejφm p°ekroΦenφ je partie ukonΦena.
- AutomatickΘ zahßjenφ partie: AutomatickΘ vygenerovßnφ n∞kolika tah∙ na zaΦßtku ka₧dΘ partie. Ka₧dß dvojice AI dostane stejnß zahßjenφ. PoΦet r∙zn²ch zahßjenφ zßvisφ na poΦtu partiφ a poΦtu opakovßnφ. Navφc je ka₧dΘ zahßjenφ nßhodn∞ otoΦeno nebo posunuto.
Rozm∞ry hracφ plochy a povolenφ pozastavenφ soupe°ova AI se nastavujφ v dialogovΘm okn∞ Mo₧nosti.
TlaΦφtkem PokraΦovat se ze souboru state.tur obnovφ stav d°φve p°eruÜenΘho turnaje. Ze souboru se naΦtou nßzvy hrßΦ∙, Φas na tah, Φas na partii, pam∞¥, automatickΘ zahßjenφ, rozm∞ry hracφ plochy. Ostatnφ ·daje je t°eba zadat p°ed stiskem tlaΦφtka PokraΦovat. Je takΘ mo₧nΘ pokraΦovat v u₧ dokonΦenΘm turnaji, pokud zv∞tÜφte poΦet opakovßnφ.
Turnaj lze kdykoli p°eruÜit stiskem Esc. Ve v²sledcφch turnaje je poΦet v²her a proher rozd∞len na t°i sΦφtance: 1) hrßΦ zaΦφnal; 2) hrßΦ nezaΦφnal; 3) chyba nebo p°ekroΦen Φasov² limit. V okn∞ v²sledk∙ se tlaΦφtkem Tabulka zobrazφ html tabulka, kde jsou v²sledky pro jednotlivΘ dvojice hrßΦ∙.
Turnaj po sφti
--------------
Turnaj lze odehrßt pomocφ n∞kolika poΦφtaΦ∙. Na vÜech by m∞l b²t stejn∞ rychl² procesor. Jeden poΦφtaΦ slou₧φ jako server, ostatnφ jsou klienti. Nejd°φve na serveru spus¥te turnaj. Po spuÜt∞nφ se do logu napφÜe nßzev poΦφtaΦe a server Φekß na klienty. Klienty je mo₧nΘ p°ipojovat nebo odpojovat kdykoli v p°∙b∞hu turnaje. Klienti se p°ipojujφ p°φkazem z menu Hra/P°ipojit se. Krom∞ jmΘna serveru a portu musφte zadat takΘ slo₧ku, do kterΘ se budou stahovat AI ze serveru. Pokud u₧ na klientu AI existujφ, pak se jen zkontroluje, jestli majφ stejnΘ CRC jako soubory na serveru. Jestli₧e se AI sklßdß z vφce soubor∙, pak musφ b²t zpakovßno do ZIP archivu. Po sta₧enφ ze serveru si klient rozbalφ ZIP soubor do doΦasnΘho adresß°e. Ze serveru se krom∞ AI posφlajφ takΘ informace o velikosti hracφ plochy, ΦasovΘ limity, tolerance, limit pam∞ti, automatickΘ zahßjenφ, povolenφ pozastavenφ soupe°ova AI, maximßlnφ poΦet opakovßnφ p°i remφze. Pokud jste p°i spuÜt∞nφ turnaje zaÜkrtli "Uklßdat partie do slo₧ky", pak klient po skonΦenφ partie posφlß zßznam o vÜech proveden²ch tazφch, jinak poÜle jen v²sledek partie a ·daje o Φasech a vyu₧itΘ pam∞ti. Po skonΦenφ turnaje z∙stßvajφ klienti p°ipojeni a Φekajφ na dalÜφ turnaj. Dokud je klient nebo server p°ipojen, je v∞tÜina polo₧ek z menu nep°φstupnß.
Hra dvou hrßΦ∙ p°es internet
----------------------------
Hra se spustφ z menu "Hra/P°ipojit se". HrßΦi se musejφ p°edem n∞jak domluvit (nap°. pomocφ SMS nebo ICQ), kdy spolu budou hrßt. Oba musejφ znßt nßzev nebo IP adresu druhΘho poΦφtaΦe. N∞kterΘ funkce jsou p°i h°e zakßzßny (vp°ed, otev°φt soubor, prohodit hrßΦe, automatickΘ zahßjenφ). ╚as nenφ omezen. HrßΦi mohou mezi sebou komunikovat pomocφ "Hra/Poslat zprßvu". DialogovΘ okno pro posφlßnφ zprßv se automaticky aktivuje po stisku klßvesy.
DßvkovΘ spouÜt∞nφ
-----------------
Hru dvou AI lze spustit z p°φkazovΘ °ßdky. Prvnφ parametr je -p, druh² a t°etφ parametr jsou nßzvy AI, nap°φklad piskvork -p brain1.exe brain2.exe. Nßvratovß hodnota urΦuje, kdo vyhrßl (1=prvnφ AI, 2=druhΘ AI, 3=remφza, 0=chyba).
Licence
-------
Na tento program (krom∞ slo₧ek skelet a skelet_Delphi) se vztahuje licence "Reciprocal Public License". Zde jsou uvedeny jen nejd∙le₧it∞jÜφ body. CelΘ jejφ zn∞nφ (33KB, v anliΦtin∞) lze stßhnout z autorovy webovΘ strßnky nebo http://opensource.org/licenses.
1) Program je zdarma. Je povoleno ho kopφrovat nebo distribuovat na CD, t°eba spolu s jin²mi programy.
2) Program si m∙₧ete pro vlastnφ pot°ebu upravit. TakΘ m∙₧ete Φßsti zdrojovΘho k≤du pou₧φt do sv²ch vlastnφch program∙. V obou p°φpadech musφte splnit nßsledujφcφ po₧adavky:
a) Nesmφte zm∞nit nebo odstranit tuto licenci.
b) Nesmφte smazat jmΘno p∙vodnφho autora.
c) Zdokumentujete vÜechny provedenΘ zm∞ny a u ka₧dΘ zm∞ny uvedete datum.
d) ZdrojovΘ k≤dy (vΦetn∞ vaÜich ·prav a rozÜφ°enφ) zdarma zve°ejnφte na internetu.